Event scheduling system for collecting image data related to one or more events by autonomous vehicles

ABSTRACT

An event scheduling system for collecting image data related to one or more events by one or more autonomous vehicles includes a centralized scheduling system in wireless communication with one or more autonomous vehicles. Each autonomous vehicle collects the image data related to the one or more events while following a unique travel schedule. The centralized scheduling system executes instructions to determine the unique travel schedule for a specific autonomous vehicle, where the unique travel schedule directs the specific autonomous vehicle to the specific location of the filtered event to collect the image data.

INTRODUCTION

The present disclosure relates to an event scheduling system forcollecting image data related to one or more events by one or moreautonomous vehicles, where the event scheduling system determines aunique travel schedule for a specific autonomous vehicle. The autonomousvehicles collect the image data related to the one or more events whilefollowing their unique travel schedules. The unique travel schedule isdetermined based on either a dynamic programming scheduling approach ora greedy algorithm approach.

Autonomous vehicles may employ a variety of technologies that collectsensory information to detect their surroundings such as, but notlimited to, radar, laser light, global positioning systems (GPS), andcameras. In particular, autonomous vehicles employ multiple cameras toextract three-dimensional data regarding objects in their surroundingenvironment. However, the cameras may sometimes encounter issues thatmake it impossible to view some of the autonomous vehicle'ssurroundings. For example, one issue that may occur is vision occlusion,which occurs when features of an object are being masked by otherbodies. In another example, the autonomous vehicle's cameras may not befunctional and are therefore unable to collect image data regarding thesurrounding objects. This issue may be further compounded when there isan event such as a traffic incident that occurs in the surroundingenvironment, and the camera is unable to view the traffic incident.

Thus, while current vehicles achieve their intended purpose, there is aneed in the art for an improved approach for collecting image data byautonomous vehicles.

SUMMARY

According to several aspects, an event scheduling system for collectingimage data related to one or more events by one or more autonomousvehicles is disclosed. The event scheduling system includes acentralized scheduling system in wireless communication with the one ormore autonomous vehicles, where each autonomous vehicle collects theimage data related to the one or more events while following a uniquetravel schedule. The centralized scheduling system executes instructionsto receive one or more notifications indicating an event has occurredand create an event pool that stores the one or more events. Thecentralized scheduling system executes instructions to compare apredetermined route corresponding to a specific autonomous vehicle witha specific location corresponding to each event stored the event pool toidentify one or more filtered events. The centralized scheduling systemexecutes instructions to determine the specific autonomous vehicle ispresent when a filtered event occurs based on the predetermined routeand the specific location of the filtered event. The centralizedscheduling system executes instructions to identify a matched pair thatincludes the filtered event and the predetermined route for the specificautonomous vehicle. Finally, the centralized scheduling system executesinstructions to determine the unique travel schedule for the specificautonomous vehicle based on the matched pair, where the unique travelschedule directs the specific autonomous vehicle to the specificlocation of the filtered event to collect the image data.

In an aspect, the one or more events include a traffic incidentinvolving one or more vehicles.

In another aspect, the one or more events indicate the presence of anobject.

In still another aspect, the object is one of the following: a potholeon a roadway, a traffic sign, a street sign, a road marking, a building,a landmark, a bicyclist, and a pedestrian.

In an aspect, the one or more notifications are generated by anotherautonomous vehicle or by an individual.

In another aspect, the unique travel schedule is determined based oneither a dynamic programming scheduling approach or a greedy algorithmapproach.

In still another aspect, the specific autonomous vehicle includes anevent observing capacity indicating a number of events the specificautonomous vehicle observes and collects image data for simultaneously.

In an aspect, the centralized scheduling system executes instructions toexecute a dynamic programming scheduling algorithm for a predeterminednumber of rounds to determine the unique travel schedule, where thepredetermined number of rounds is equal to the event observing capacityof the specific autonomous vehicle.

In another aspect, the centralized scheduling system executesinstructions to execute a greedy algorithm that introduces the eventssequentially to the unique travel schedule of the specific autonomousvehicle until the event observing capacity of the specific autonomousvehicle is reached.

In still another aspect, the centralized scheduling system executesinstructions to execute a greedy algorithm that introduces the eventsbased on a total number of events occurring at each event location untilthe event observing capacity of the specific autonomous vehicle isreached.

In an aspect, the centralized scheduling system executes instructions toexecute a greedy algorithm that introduces the events based on a minimumnumber of observers required by each event in the event pool until theevent observing capacity of the specific autonomous vehicle is reached.

In another aspect, the minimum number of observers represent a minimumnumber of vehicles required to collect the image data for the specificevent.

In still another aspect, the centralized scheduling system executesinstructions to determine a maximum capacity percentage for each of theone or more autonomous vehicles based on a machine learning algorithm,wherein the maximum capacity percentage indicates availability forexecuting an unexpected task that is not included as part of the uniquetravel schedule.

In an aspect, the centralized scheduling system executes instructions tocalculate a cost function of the machine learning algorithm and solvefor an output value that is part of the cost function, where the outputvalue indicates the maximum capacity percentage for the specificautonomous vehicle.

In an aspect, a method for determining a unique travel schedule for aspecific autonomous vehicle. The method includes receiving, by acentralized scheduling system, one or more notifications indicating anevent has occurred, where the centralized scheduling system is inwireless communication with the one or more autonomous vehicles and eachautonomous vehicle collects the image data related to the one or moreevents. The method includes creating, by the centralized schedulingsystem, an event pool that stores the one or more events. The methodfurther includes comparing a predetermined route corresponding to aspecific autonomous vehicle with a specific location corresponding toeach event stored the event pool to identify one or more filteredevents, where the specific autonomous vehicle travels to the specificlocation corresponding to the filtered event when following thepredetermined route. The method includes determining the specificautonomous vehicle is present when a filtered event occurs based on thepredetermined route and the specific location of the filtered event. Themethod also includes identifying a matched pair that includes thefiltered event and the predetermined route for the specific autonomousvehicle. The method also includes determining the unique travel schedulefor the specific autonomous vehicle based on the matched pair, where theunique travel schedule directs the specific autonomous vehicle to thespecific location of the filtered event to collect the image datarelated to the filtered event. The method also includes executing adynamic programming scheduling algorithm for a predetermined number ofrounds to determine the unique travel schedule, where the predeterminednumber of rounds is equal to the event observing capacity of thespecific autonomous vehicle.

In an aspect, the method includes executing a greedy algorithm thatintroduces the events sequentially to the unique travel schedule of thespecific autonomous vehicle until the event observing capacity of thespecific autonomous vehicle is reached.

In another aspect, the method includes executing a greedy algorithm thatintroduces the events based on a total number of events occurring ateach event location until the event observing capacity of the specificautonomous vehicle is reached.

In still another aspect, the method includes executing a greedyalgorithm that introduces the events based on a minimum number ofobservers required by each event in the event pool until the eventobserving capacity of the specific autonomous vehicle is reached.

Further areas of applicability will become apparent from the descriptionprovided herein. It should be understood that the description andspecific examples are intended for purposes of illustration only and arenot intended to limit the scope of the present disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings described herein are for illustration purposes only and arenot intended to limit the scope of the present disclosure in any way.

FIG. 1 is a schematic diagram of the disclosed event scheduling systemincluding a centralized scheduling system in wireless communication withone or more autonomous vehicles, according to an exemplary embodiment;

FIG. 2 is an operational flow diagram of the centralized schedulingsystem shown in FIG. 1 including an event pool and an individual travelschedule block for determining a unique travel schedule for a specificautonomous vehicle, ‘according to an exemplary embodiment;

FIG. 3 is a time sequence diagram illustrating the dynamic programmingscheduling approach for determining the unique travel schedule,according to an exemplary embodiment;

FIG. 4 is a time sequence diagram illustrating the greedy algorithmapproach for determining the unique travel schedule, according to anexemplary embodiment; and

FIG. 5 is a process flow diagram illustrating a method for determiningthe unique travel schedule for a specific autonomous vehicle by thedisclosed event scheduling system, according to an exemplary embodiment.

DETAILED DESCRIPTION

The following description is merely exemplary in nature and is notintended to limit the present disclosure, application, or uses.

Referring to FIG. 1 , an exemplary event scheduling system 10 forcollecting image data related to one or more events is illustrated. Theevent scheduling system 10 includes one or more autonomous vehicles 12and a back-end office 16, where the one or more autonomous vehicles 12are in wireless communication with one or more centralized schedulingsystems 18 that are part of the back-end office 16 by a network 26. Theautonomous vehicles 12 each include one or more automated drivingcontrollers 20 that execute routing algorithms for determining apredetermined route 30 for a corresponding one of the autonomousvehicles 12, where the autonomous vehicles 12 follow the correspondingroute 30. Each autonomous vehicle 12 shares their correspondingpredetermined route 30 with the one or more centralized schedulingsystems 18 of the back-end office 16. It is to be appreciated that theautonomous vehicle 12 may be any type of vehicle such as, but notlimited to, a sedan, truck, sport utility vehicle, van, or motor home.

As explained below, the event scheduling system 10 determines a uniquetravel schedule 28 for each autonomous vehicle 12 (seen in FIG. 2 ). Theautonomous vehicles 12 each include at least a camera 22 in electroniccommunication with the automated driving controller 20, where the camera22 collects the image data related to the one or more events whilefollowing the unique travel schedule 28. The image data collected by theautonomous vehicles 12 is shared with the one or more centralizedscheduling systems 18 of the back-end office 16. The event schedulingsystem 10 may collect image data related to a specific event frommultiple perspectives (i.e., image data collected by different vehiclecameras that have different perspectives). In embodiments, if a camera22 of an autonomous vehicle 12 is unable to collect data (for example,if the camera 22 is nonfunctional or if vision occlusion occurs), thenthe event scheduling system 10 may compensate for this issue by usingimage data collected by another autonomous vehicle 12 instead.

The event is any incident or object that is captured by image data. Forexample, the event may be a traffic incident involving one or morevehicles. Alternatively, in another example, the event indicates thepresence of an object. Some examples of objects include, but are notlimited to, a pothole on a roadway, a traffic sign, a street sign, aroad marking, a building, a landmark such as a monument or statue, or anindividual such as a bicyclist or a pedestrian. It is to be appreciatedthe event stays valid for a duration of time and does not occurinstantaneously. Instead, the duration of time of the event is ofsufficient length so that the event scheduling system 10 may dispatchone or more autonomous vehicles 12 to a corresponding location of theevent to collect image data related to the event. For example, if theevent is a traffic incident between two vehicles, then the duration oftime for the traffic incident is of sufficient length so that one ormore autonomous vehicles 12 may be dispatched to the correspondinglocation to collect image data.

It is to be appreciated that each individual event includes a requiredor minimum number of observers, where the minimum number of observersrepresent a minimum number of vehicles required to collect image datafor the specific event. The minimum number of observers is based on thenature and type of event, where certain types of events may require moreobservers than other events. For example, an event such as a trafficincident involving more than two vehicles would require more observerswhen compared to viewing pothole or a street sign. Thus, in embodiments,the disclosed event scheduling system 10 collects image data related toa specific event from multiple perspectives (i.e., image data collectedby different vehicles). It is also to be appreciated that eachindividual event occurs at a specific location. For example, if theindividual event is a traffic incident, then the specific locationindicates where on the roadway the traffic incident occurred.

FIG. 2 is a flow diagram of the centralized scheduling system 18 shownin FIG. 1 for determining the unique travel schedule 28 for a specificautonomous vehicle 12. The centralized scheduling system 18 receives oneor more notifications 36 indicating an event has occurred. It is to beappreciated that the notifications 36 are generated by anotherautonomous vehicle 12 connected to the network 26 or, in thealternative, by an individual. For example, an autonomous vehicle 12 maysend a notification over the network 26 indicating involvement in atraffic incident. Alternatively, an individual such as a cloud operatoror the driver of a vehicle may send a notification 36 indicating theevent is occurring.

The centralized scheduling system 18 creates an event pool 40 and anindividual travel schedule block 42. The event pool 40 stores the eventsand the individual travel schedule block 42 determines the unique travelschedule 28 for the specific autonomous vehicle 12. The individualtravel schedule block 42 includes a filter 50, a matching block 52, anda route determination block 54 that determines the unique travelschedule 28. Referring to both FIGS. 1 and 2 , the one or more automateddriving controllers 20 for each autonomous vehicle 12 determines thepredetermined route 30 based on an origin location 46, a destinationlocation 48, and any stops in between the origin and destinationlocations. As seen in FIG. 2 , the predetermined route 30 determined bya specific autonomous vehicle 12 is transmitted over the network 26 tothe filter 50 of the individual travel schedule block 42 of the one ormore centralized scheduling systems 18.

The filter 50 of the one or more centralized scheduling systems 18compares the predetermined route 30 for a specific autonomous vehicle 12with the specific location corresponding to each event stored the eventpool 40 and determines if the specific autonomous vehicle 12 travels toany of the specific locations of the events stored in the event pool 40.The filter 50 then identifies one or more filtered events 60, where thespecific autonomous vehicle 12 travels to the specific locationcorresponding to the filtered event 60.

The matching block 52 receives the one or more filtered events 60 anddetermines the specific autonomous vehicle is present when a filteredevent occurs based on the predetermined route 30 corresponding to thespecific autonomous vehicle 10 and the specific location of the filteredevent. In an embodiment, the centralized scheduling system 18 compares afirst interval of time when the specific autonomous vehicle 12 ispresent at the specific location of the filtered event 60 whilefollowing the predetermined route 30 with a second interval of time whenthe filtered event 60 takes place, where the centralized schedulingsystem 18 determines the specific autonomous vehicle 12 is present whenthe filtered event occurs if the first interval of time overlaps withthe second interval of time.

In response to determining the specific autonomous vehicle 12 is presentat the specific location as the specific event takes place, the matchingblock 52 identifies a matched pair 62. The matched pair 62 includes thefiltered event 60 and the predetermined route 30 for the specificautonomous vehicle 12. The individual travel schedule block 42identifies matched pairs for each filtered event 60 identified by thefilter 50. The route determination block 54 then determines the uniquetravel schedule 28 based on the matched pairs 62. In other words, theunique travel schedule 28 includes each filtered event 60 that is partof the event pool 40 that occurs at the same time the specificautonomous vehicle 12 is present to collect image data. Specifically,the specific autonomous vehicle 12 is present and collects the imagedata at the specific location of each filtered event 60 while followingthe unique travel schedule 28. It is to be appreciated that the uniquetravel schedule 28 may be determined based on either a dynamicprogramming scheduling approach or a greedy algorithm approach and isdescribed in greater detail below.

FIG. 3 is a time sequence diagram illustrating the dynamic programmingscheduling approach, and illustrates three event sequences 70, whereeach event sequence 70 include four events 72. The time sequence diagramincludes an x-axis, where time T is represented along the x-axis. Asseen in FIG. 3 , the events 72 are disjointed, and therefore do notoverlap in their respective duration of time. Referring to both FIGS. 2and 3 , it is to be appreciated that the duration of time includes notonly the time it takes to record the event 72 in real-time, but alsoprocessing and upload time. Specifically, the duration of time includecapturing video or images in real-time by the camera 22 of theautonomous vehicle 12, saving the image data in memory or hard drive ofthe automated driving controllers 20, and uploading the image data overthe network 26 to the one or more centralized scheduling systems 18.

Continuing to refer to FIGS. 2 and 3 , it is to be appreciated that eachautonomous vehicle 12 includes an event observing capacity, where theevent observing capacity indicates a number of events the specificautonomous vehicle 12 observes and collects data for simultaneously. Inthe example as shown in FIG. 3 , the event observing capacity is three,and therefore three event sequences 70 are shown. It is to beappreciated that FIG. 3 is merely exemplary in nature and the eventobserving capacity varies by vehicle and depends upon available storagein memory of the one or more automated driving controllers 20 andnetwork speed of the network 26.

When employing the dynamic programming scheduling approach, theindividual travel schedule block 42 of the centralized scheduling system18 determines the unique travel schedule 28 for the specific autonomousvehicle 12 by selecting as many events 72 from each event sequence 70for observation simultaneously as possible without exceeding the eventobserving capacity for the specific autonomous vehicle 12. Theindividual travel schedule block 42 of the centralized scheduling system18 determines the unique travel schedule 28 by executing a dynamicprogramming scheduling algorithm for a predetermined number of rounds,where the predetermined number of rounds is equal to the event observingcapacity. For example, if the specific autonomous vehicle 12 is capableof observing three events simultaneously, then the dynamic programmingscheduling algorithm is executed three times. Each time the dynamicprogramming scheduling algorithm is executed, the dynamic programmingscheduling algorithm determines one of the three event sequences 70.

For example, the first time the dynamic programming scheduling algorithmis executed, the first event sequence 70A is generated by selectingdisjointed events 72 that do not overlap in their respective duration oftime. It is to be appreciated that the dynamic programming schedulingalgorithm selects as many events 72 for an event sequence as possiblewithout creating any overlap in time between each event 72. During eachevent 72, the respective camera 22 of the specific autonomous vehicle 12is present and collects the image data at the specific location beforethe respective event 72 expires. An event 72 expires once an occurrencethat defined the event is no longer valid. For example, if the event 72is a traffic incident, then the event 72 expires once the trafficincident has cleared and the vehicle involved have driven away. Once thespecific autonomous vehicle 12 has finished observing the event, thespecific autonomous vehicle 12 may drive to the specific locationassociated with the next event 72 that is part of the first eventsequence 70A. Similarly, the second time the dynamic programmingscheduling algorithm is executed the second event sequence 70B isgenerated, and the third time the dynamic programming schedulingalgorithm the third event sequence 70C is generated. Once the dynamicprogramming scheduling algorithm is executed the predetermined number ofrounds, the individual travel schedule block 42 of the centralizedscheduling system 18 determines the unique travel schedule 28 for thespecific autonomous vehicle 12 by merging the events 72 together. In theexample as shown in FIG. 3 , merging the events 72 includes merging allof the events 72 in the first event sequence 70A, the second eventsequence 70B, and the third event sequence 70C together.

FIG. 4 is a time sequence diagram illustrating the greedy algorithmapproach for determining the unique travel schedule 28 according to anexemplary embodiment. In the example as shown, the x-axis represents thetime T. In the non-limiting embodiment as shown in FIG. 4 , the timesequence diagram illustrates seven events 170, which are numbered E1-E7.Referring to both FIGS. 2 and 4 , in one embodiment, the individualtravel schedule block 42 of the centralized scheduling system 18determines the unique travel schedule 28 for the specific autonomousvehicle 12 by executing the greedy algorithm and introducing eventssequentially to the unique travel schedule 28 until the event observingcapacity for the specific autonomous vehicle 12 is met. Once the eventobserving capacity for the specific autonomous vehicle 12 is met, thegreedy algorithm ignores additional events and will not introduce anadditional event to the unique travel schedule 28 until one of theselected events has finished. In the example as shown in FIG. 4 , theevent observing capacity is two. Therefore, in the example as shown, ifboth events E3 and E4 are selected as part of the unique travel schedule28, then the fifth event E5 may not be introduced to the unique travelschedule 28 until the third event E3 finishes.

In one embodiment, the individual travel schedule block 42 of thecentralized scheduling system 18 determines the unique travel schedule28 for the specific autonomous vehicle 12 by executing the greedyalgorithm and introducing the events to the unique travel schedule 28based on a total number of events occurring at the specific location ofeach event of the event pool 40 until the event observing capacity ofthe specific autonomous vehicle 12 is reached. Specifically, the greedyalgorithm compares the total number of events of occurring at thespecific location of each event stored in the event pool 40 and selectsthe events corresponding to the specific location having the greatestnumber of events to add to the unique travel schedule 28 of the specificautonomous vehicle 12. For example, if a first location A includes fourevents (e.g., events E1, E3, E5, E6) while a second location B includesthree events (e.g., events E2, E4, E7), then the greedy algorithmselects the fifth event E5 instead of the fourth event E4, since thefourth event E4 is at the first location A where more events arelocated. Now that the first location A and the second location B have anequal number of events, the greedy algorithm may arbitrarily select thenext event.

In one embodiment, the individual travel schedule block 42 of thecentralized scheduling system 18 determines the unique travel schedule28 for the specific autonomous vehicle 12 by executing the greedyalgorithm and introducing the events in the event pool 40 to the uniquetravel schedule 28 based on the minimum number of observers required byeach event in the event pool 40 until the event observing capacity ofthe specific autonomous vehicle is reached. That is, the greedyalgorithm selects the event requiring the greatest number of observers.For example, if the minimum number of observers required by the fourthevent E4 is nine, and the minimum number of observers for the fifthevent E5 is ten, then the greedy algorithm selects the fifth event E5since the fifth event E5 included the greatest number of observers. Nowthat the fourth event E4 and the fifth event E5 have an equal number ofevents, the greedy algorithm may arbitrarily select the next event.

Referring to FIG. 2 , in an embodiment the centralized scheduling system18 determines a maximum capacity percentage for each of the autonomousvehicles 12 based on a machine learning algorithm, where the maximumcapacity percentage indicates availability for executing an unexpectedtask that is not included as part of the unique travel schedule 28.Specifically, the centralized scheduling system 18 determines themaximum capacity percentage for the specific autonomous vehicle 12 bycalculating a cost function J(θ) of the machine learning algorithm andsolving for an output value y that indicates the maximum capacitypercentage for the specific autonomous vehicle 12. In an embodiment, thecost function is determined by combining a standard linear regressionformula with a regularization function and is expressed by the followingequation:

${J(\theta)} = {\frac{1}{2m}\left\lbrack {{\sum\limits_{i = 1}^{m}\left( {{h_{\theta}\left( x^{(i)} \right)} - y^{(i)}} \right)^{2}} + {\lambda{\sum\limits_{j = 1}^{n}\theta_{j}^{2}}}} \right\rbrack}$

where h_(θ) is a hypothesis, m denotes a number of data records used forthe machine learning algorithm, λ indicates an amount the machinelearning algorithm should regularize, x is a features vector, and y isthe output value. The features vector is expressed as x=[x₁, x₂, x₃, x₄,x₅, x₆, x₇], where x₁ denotes road type such as freeways, local roadsand residential roads, x₂ denotes road structure such as ramps,intersections, and roundabouts, x₃ denotes road speed limit, x₄ denotesa number of events occurring at a specific location, x₅ denotes geohashcode, x₆ denotes vehicle capacity use percentage, and x₇ denotes howmany unplanned event that a specific autonomous vehicle 12 is requiredto perform in the specific location.

FIG. 5 is a process flow diagram illustrating a method 200 fordetermining the unique travel schedule 28 for a specific autonomousvehicle 12. Referring generally to FIGS. 1, 2, and 5 , the method 200may begin at block 202. In block 202, the centralized scheduling system18 receive one or more notifications 36 indicating an event hasoccurred. As mentioned above, the notifications 36 are generated byanother autonomous vehicle 12 connected to the network 26 or, in thealternative, by an individual. The method 200 may then proceed to block204.

In block 204, the centralized scheduling system 18 creates the eventpool 40 that stores one or more events. The method 200 may then proceedto block 206.

In block 206, the centralized scheduling system 18 compares thepredetermined route corresponding to a specific autonomous vehicle 12with a specific location corresponding to each event stored the eventpool 40 to identify one or more filtered events, where the specificautonomous vehicle 12 travels to the specific location corresponding tothe filtered event when following the predetermined route 30. The method200 may then proceed to block 208.

In block 208, the centralized scheduling system 18 determines if thespecific autonomous vehicle 12 is present when a filtered event occursbased on the predetermined route 30 and the specific location of thefiltered event. Specifically, in an embodiment, the one or morecentralized scheduling systems 18 compare a first interval of time atwhich the specific autonomous vehicle is present at the specificlocation of the filtered event while following the predetermined routeoverlaps with a second interval of time at which the filtered eventtakes place to determine if the first interval of time overlaps with thesecond interval of time, which indicates the specific autonomous vehicle12 is present when the filtered event occurs. If the first interval oftime does not overlap with the second interval of time, then the method200 may terminate. Otherwise, the method 200 may then proceed to block210.

In block 210, the centralized scheduling system 18 identifies a matchedpair that includes the filtered event and the predetermined route forthe specific autonomous vehicle 12. The method 200 may then proceed toblock 212.

In block 212, the centralized scheduling system 18 determines the uniquetravel schedule 28 for the specific autonomous vehicle 12 based on thematched pair determined in block 210. The method 200 may then terminate.

Referring generally to the figures, the disclosed event schedulingsystem provides various technical effects and benefits by collectingimage data pertaining to one or more events. The image data may becollected using multiple perspectives, since different vehicle camerasthat have different perspectives). Thus, if one or more cameras of anautonomous vehicle are unable to collect data at a specific location,then the image data collected by the event scheduling system may be usedinstead. Accordingly, the disclosed system provides a cost-effective andrelatively simple approach to collect image data based on taskscheduling between autonomous vehicles.

The controllers may refer to, or be part of an electronic circuit, acombinational logic circuit, a field programmable gate array (FPGA), aprocessor (shared, dedicated, or group) that executes code, or acombination of some or all of the above, such as in a system-on-chip.Additionally, the controllers may be microprocessor-based such as acomputer having a at least one processor, memory (RAM and/or ROM), andassociated input and output buses. The processor may operate under thecontrol of an operating system that resides in memory. The operatingsystem may manage computer resources so that computer program codeembodied as one or more computer software applications, such as anapplication residing in memory, may have instructions executed by theprocessor. In an alternative embodiment, the processor may execute theapplication directly, in which case the operating system may be omitted.

The description of the present disclosure is merely exemplary in natureand variations that do not depart from the gist of the presentdisclosure are intended to be within the scope of the presentdisclosure. Such variations are not to be regarded as a departure fromthe spirit and scope of the present disclosure.

What is claimed is:
 1. An event scheduling system for collecting imagedata related to one or more events by one or more autonomous vehicles,wherein the event scheduling system comprises: a centralized schedulingsystem in wireless communication with the one or more autonomousvehicles, wherein each autonomous vehicle collects the image datarelated to the one or more events while following a unique travelschedule, and wherein the centralized scheduling system executesinstructions to: receive one or more notifications indicating an eventhas occurred; create an event pool that stores the one or more events;compare a predetermined route corresponding to a specific autonomousvehicle with a specific location corresponding to each event stored theevent pool to identify one or more filtered events; determine thespecific autonomous vehicle is present when a filtered event occursbased on the predetermined route and the specific location of thefiltered event; identify a matched pair that includes the filtered eventand the predetermined route for the specific autonomous vehicle; anddetermine the unique travel schedule for the specific autonomous vehiclebased on the matched pair, wherein the unique travel schedule directsthe specific autonomous vehicle to the specific location of the filteredevent to collect the image data.
 2. The event scheduling system of claim1, wherein the one or more events include a traffic incident involvingone or more vehicles.
 3. The event scheduling system of claim 1, whereinthe one or more events indicate the presence of an object.
 4. The eventscheduling system of claim 3, wherein the object is one of thefollowing: a pothole on a roadway, a traffic sign, a street sign, a roadmarking, a building, a landmark, a bicyclist, and a pedestrian.
 5. Theevent scheduling system of claim 1, wherein the one or morenotifications are generated by another autonomous vehicle or by anindividual.
 6. The event scheduling system of claim 1, wherein theunique travel schedule is determined based on either a dynamicprogramming scheduling approach or a greedy algorithm approach.
 7. Theevent scheduling system of claim 1, wherein the specific autonomousvehicle includes an event observing capacity indicating a number ofevents the specific autonomous vehicle observes and collects image datafor simultaneously.
 8. The event scheduling system of claim 7, whereinthe centralized scheduling system executes instructions to: execute adynamic programming scheduling algorithm for a predetermined number ofrounds to determine the unique travel schedule, wherein thepredetermined number of rounds is equal to the event observing capacityof the specific autonomous vehicle.
 9. The event scheduling system ofclaim 7, wherein the centralized scheduling system executes instructionsto: execute a greedy algorithm that introduces the events sequentiallyto the unique travel schedule of the specific autonomous vehicle untilthe event observing capacity of the specific autonomous vehicle isreached.
 10. The event scheduling system of claim 7, wherein thecentralized scheduling system executes instructions to: execute a greedyalgorithm that introduces the events based on a total number of eventsoccurring at each event location until the event observing capacity ofthe specific autonomous vehicle is reached.
 11. The event schedulingsystem of claim 7, wherein the centralized scheduling system executesinstructions to: execute a greedy algorithm that introduces the eventsbased on a minimum number of observers required by each event in theevent pool until the event observing capacity of the specific autonomousvehicle is reached.
 12. The event scheduling system of claim 11, whereinthe minimum number of observers represent a minimum number of vehiclesrequired to collect the image data for the specific event.
 14. The eventscheduling system of claim 1, wherein the centralized scheduling systemexecutes instructions to: determine a maximum capacity percentage foreach of the one or more autonomous vehicles based on a machine learningalgorithm, wherein the maximum capacity percentage indicatesavailability for executing an unexpected task that is not included aspart of the unique travel schedule.
 15. The event scheduling system ofclaim 14, wherein the centralized scheduling system executesinstructions to: calculate a cost function of the machine learningalgorithm; and solve for an output value that is part of the costfunction, wherein the output value indicates the maximum capacitypercentage for the specific autonomous vehicle.
 16. A method fordetermining a unique travel schedule for a specific autonomous vehicle,the method comprising: receiving, by a centralized scheduling system,one or more notifications indicating an event has occurred, wherein thecentralized scheduling system is in wireless communication with the oneor more autonomous vehicles and each autonomous vehicle collects theimage data related to the one or more events; creating, by thecentralized scheduling system, an event pool that stores the one or moreevents; comparing a predetermined route corresponding to a specificautonomous vehicle with a specific location corresponding to each eventstored the event pool to identify one or more filtered events, whereinthe specific autonomous vehicle travels to the specific locationcorresponding to the filtered event when following the predeterminedroute; determining the specific autonomous vehicle is present when afiltered event occurs based on the predetermined route and the specificlocation of the filtered event; identifying a matched pair that includesthe filtered event and the predetermined route for the specificautonomous vehicle; and determining the unique travel schedule for thespecific autonomous vehicle based on the matched pair, wherein theunique travel schedule directs the specific autonomous vehicle to thespecific location of the filtered event to collect the image datarelated to the filtered event.
 17. The method of claim 16, furthercomprising: executing a dynamic programming scheduling algorithm for apredetermined number of rounds to determine the unique travel schedule,wherein the predetermined number of rounds is equal to the eventobserving capacity of the specific autonomous vehicle.
 18. The method ofclaim 16, further comprising: executing a greedy algorithm thatintroduces the events sequentially to the unique travel schedule of thespecific autonomous vehicle until the event observing capacity of thespecific autonomous vehicle is reached.
 19. The method of claim 16,further comprising: executing a greedy algorithm that introduces theevents based on a total number of events occurring at each eventlocation until the event observing capacity of the specific autonomousvehicle is reached.
 20. The method of claim 16, further comprising:executing a greedy algorithm that introduces the events based on aminimum number of observers required by each event in the event pooluntil the event observing capacity of the specific autonomous vehicle isreached.